import request from '@/utils/request'

const baseUrl = import.meta.env.VITE_APP_NEW_MODULE_BASE_API;

const defineUrl = '/tkTable'

/**
 * 查询听课信息
 * @param query
 * @property pageNum 其实页数
 * @property pageSize 每页显示条数
 * @property year 学年
 * @property term 学期
 * @returns {*}
 */
export function getTkRecordListUrl(query) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + '/tkRecordList',
        method: 'get',
        params: query
    })
}


/**
 * 初始化添加听课信息
 * @returns {*}
 */
export function initAddTkUrl() {
    return request({
        baseURL: baseUrl,
        url: defineUrl + '/initAddTk',
        method: 'get',
    })
}

/**
 * 添加听课信息 - 此处不需要做校验，但是又数据必须要
 * @param data
 * @property tcId 要听的课程 id
 * @returns {*}
 */
export function addTkRecordUrl(data) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + '/addTkRecord',
        method: 'post',
        data: data
    })
}

/**
 * 初始化修改听课信息
 * @param tkId 听课id
 * @returns {*}
 */
export function initUpdateTkUrl(tkId) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + `/initUpdateTk/${tkId}`,
        method: 'get',
    })
}

/**
 * 修改听课信息
 * @param data
 * @returns {*}
 */
export function updateTkUrl(data) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + '/updateTk',
        method: 'put',
        data: data
    })
}

/**
 * 提交听课信息
 * @param data
 * @returns {*}
 */
export function submitTkUrl(data) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + `/commitTk`,
        method: 'post',
        data: data
    })
}

/**
 * 删除听课记录信息
 * @param tkId 听课主键 id
 * @returns {*}
 */
export function deleteTkRecordUrl(tkId) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + `/deleteTkRecord/${tkId}`,
        method: 'delete',
    })
}

/**
 * 获取副课老师
 * @param tcId 课程 id
 * @param type 类型
 * @returns {*}
 */
export function getViceTeacher (tcId, type) {
    return request({
        baseURL: baseUrl,
        url: defineUrl + `/getVice/${tcId}/${type}`,
        method: 'get',
    })
}
